[2024年9月4日号]個人的に気になったModern Data Stack情報まとめ

[2024年9月4日号]個人的に気になったModern Data Stack情報まとめ

Clock Icon2024.09.04

さがらです。

Modern Data Stack関連のコンサルタントをしている私ですが、Modern Data Stack界隈は日々多くの情報が発信されております。

そんな多くの情報が発信されている中、この2週間ほどの間で私が気になったModern Data Stack関連の情報を本記事でまとめてみます。

※注意事項:記述している製品のすべての最新情報を網羅しているわけではありません。私の独断と偏見で気になった情報のみ記載しております。

Data Warehouse/Data Lakehouse

Snowflake

Snowflakeのクラスタリングの5バイト制限に関する解説記事

Indigoさんにより、Snowflakeのクラスタリングの5バイト制限に関しての解説記事が出ていました。

Snowflakeのクラスタリングは最初の5バイトだけで行われるため、クラスタリングをかけたいカラムの値にprefixがあると適切にクラスタリングされないためSUBSTRING関数などを用いて抽出した文字列でクラスターキーを設定する必要があるのですが、このSUBSTRING関数などを用いた部分文字列でもなぜクラスタリングの効果があるのか、わかりやすく解説されており勉強になります。

https://zenn.dev/indigo13love/articles/93b9db53af36fa

Shareに関する徹底解説記事

@Kevinrobot34さんにより、SnowflakeのShareについてとても詳しく解説された記事が出ていました。

non-secured viewsの共有や、複数DBのデータの共有時のREFERENCE_USAGE権限など、正直私も勉強になる点が多くありがたい記事です。

https://zenn.dev/dataheroes/articles/snowflake-share

Snowflake Notebooksを用いたMLのCI/CDパイプライン構築

海外の記事において、Snowflake Notebooksを用いたMLのCI/CDパイプライン構築の方法についてまとめた記事が出ていました。

アーキテクチャの図も書かれており、一連の設定クエリやコマンドも記載されているため参考になると思います。

https://medium.com/snowflake/ci-cd-for-ml-with-snowflake-notebooks-09f33124e43c

Snowflakeの仮想ウェアハウスのスケールアップとコストの関係性について

John Ryan氏により、Snowflakeの仮想ウェアハウスのスケールアップとコストの関係性についてまとめた記事が出ていました。

ウェアハウスのサイズを上げたら必ずコストが上昇につながるわけではなく、処理速度も倍早くなっていくことが多いため、処理速度とコストのバランスを見極めて適切なウェアハウスのサイズを選択するのが重要となりますね。

https://articles.analytics.today/snowflake-virtual-warehouses-is-bigger-faster-but-more-expensive

ユーザー・ウェアハウス・クエリタグごとの消費クレジットを簡単に集計できる「QUERY_ATTRIBUTION_HISTORY」ビューがリリース

QUERY_ATTRIBUTION_HISTORYという新しいAccount Usageのビューが使えるようになりました。これを使うことで、ユーザー・ウェアハウス・クエリタグごとの消費クレジットを簡単に集計することが出来ます。

https://docs.snowflake.com/en/sql-reference/account-usage/query_attribution_history

私も本機能について簡単にですがブログを書いてみたので、ぜひご覧ください。

https://dev.classmethod.jp/articles/snowflake-query-attribution-history-view/

BigQuery

GROUP BYとSELECT DISTINCTがARRAYとSTRUCTにも使えるように

BigQueryの新機能として、GROUP BYとSELECT DISTINCTがARRAYとSTRUCTにも使えるようになりました。

https://cloud.google.com/bigquery/docs/release-notes#August_28_2024

弊社でも記事を書いておりますので、こちらも併せてご覧ください。

https://dev.classmethod.jp/articles/gcp-bigquery-group-by-select-distinct-array-struct/

Data Transform

dbt

dbt Python model × Snowparkで外部APIのデータを取得する方法

LayerX社のEngineering Blogにおいて、dbt Python modelとSnowparkを用いて外部APIのデータをdbtで取得する方法についてまとめた記事が出ていました。

dbtでデータを取得することについては様々な意見があると思いますが、個人的には技術的に非常に参考になった記事ですし、データロード~データ変換まで管理する専用のオーケストレーションツールの用意が難しい場合には選択肢の1つとして考えられると思います。

https://tech.layerx.co.jp/entry/2024/08/30/103000

dbtのCIにLLMを用いる例

phData社より、dbtのCI時に、dbtのエラーメッセージをSnowflake Cortexに与えて、エラーメッセージの内容とその解決策をプルリクエストのコメントとして出力する記事が出ていました。

発想がユニークで、記事で検証された範囲では使用するLLMをmistral-largeにすると適切な回答もしており、面白いですね!

https://www.phdata.io/blog/experimenting-with-genai-building-self-healing-ci-cd-pipelines-for-dbt-cloud/

Data Catalog

Select Star

8月のアップデート内容まとめ

Select Starで8月末に多くのリリースがあり、その内容がリリースノートにまとめられていました。

https://docs.selectstar.com/changelog/august-30-2024-monte-carlo-dbt-cross-project-lineage

個人的には、複数のdbt projectにまたがったリネージ作成や、BigQueryのSTRUCT型のカラムに含まれるフィールドのリネージの可視化、各テーブルごとにダウンストリームで使用されているダッシュボードやテーブルがどれだけあるかの確認、といった新機能が気になりました。

OpenMetadata

OpenMetadata 1.5がリリース

OpenMetadataの最新バージョンである1.5がリリースされました。

https://docs.open-metadata.org/latest/releases

上述のリリースノートはSaaS版のアップデート内容が混在していますが、OpenMetadataのOSS版に関するアップデート、OpenMetadataのSaaS版に関するアップデート、それぞれ下記のブログでまとめられています。

全体的には、データ品質のテストやダッシュボード関係のアップデートが多い印象です。

  • OpenMetadataのOSS版に関するアップデート

https://blog.open-metadata.org/announcing-openmetadata-release-1-5-0-2b2fae95ff1c

  • OpenMetadataのSaaS版に関するアップデート

https://blog.getcollate.io/announcing-collate-15

Data Activation (Reverse ETL)

Hightouch

AI Decisioningを発表

Hightouchが新機能として、「AI Decisioning」という機能を発表しました。

下記のブログを見る限りは、Hightouchを用いたマーケティングにおけるセグメンテーションや転送タイミングなどをAIが自動で決定してくれる機能のようです。

https://hightouch.com/blog/introducing-ai-decisioning

Census

GPT Columns、Observability Lake、Sync Trackingを発表

Censusが新機能として、GPT Columns、Observability Lake、Sync Trackingを発表していました。

  • GPT Columns:OpenAIのLLMを用いて自然言語でリクエストして新しいカラムを生成する機能

https://www.getcensus.com/blog/announcing-gpt-columns

  • Observability Lake:同期したデータを別途指定したS3などのストレージに保持しできる機能

https://www.getcensus.com/blog/observability-lake-extend-your-sync-data-retention

  • Sync Tracking:過去14日間に同期されたデータを分析できる機能(上述のObservability Lakeを用いることで、保持期限を14日以上にすることも可能)

https://www.getcensus.com/blog/sync-tracking-enhanced-data-observability-and-debugging

Data Quality・Data Observability

Monte Carlo

Holidaysを設定して季節性のある異常値を除外できるように

Monte Carloの新機能として、Holidaysを設定して季節性のある異常値を除外できるようになりました。

これにより、Monte Carloの異常検知に用いている機械学習のプロセスで該当日を除外したり、休暇中に不要なアラートを出さないようにする、ということが可能になります。

https://docs.getmontecarlo.com/changelog/better-manage-seasonality-with-holiday-exclusion-windows

Great Expectations

Great ExpectationsのOSS版が「GX Core」に名称変更し、1.0をリリース

Great ExpectationsのOSS版が「GX Core」に名称変更し、バージョン1.0をリリースしました。

https://greatexpectations.io/blog/introducing-gx-core-1-0

Data Orchestration

Prefect

Prefect 3.0の一般提供

Prefect 3.0が一般提供となり、Prefect公式からもブログが出ていました。

イベント駆動型のトリガーや、タスクのトランザクション制御、パフォーマンスの向上、といった点が主な特徴となっています。

https://www.prefect.io/blog/prefect-3-generally-available-september-3

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.